#include "mymainwindow.h"
#include "ui_mymainwindow.h"
#include "editform.h"


MyMainWindow::MyMainWindow(QWidget *parent) :
    QMainWindow(parent),
    ui(new Ui::MyMainWindow)
{
    ui->setupUi(this);
    // 设置标签居中显示的样式表 设置标签居中
    ui->tabWidget->setStyleSheet("QTabWidget::tab-bar { alignment: center; } ");
    // 修改最后一个QTabBar的背景色(QT 5.9.9版本中只有first和last生效)
    ui->tabWidget->tabBar()->setStyleSheet("QTabBar::tab:last { background-color: red; }");
    // 设置上方文本背景色
    ui->textLabel->setStyleSheet("background-color:rgb(255, 0, 0);");

    // 设置左上角图标
    this->setWindowIcon(QIcon(":/images/home.jpg"));
    this->setWindowTitle("工控APP V1.0"); // 设置窗口名称

    // 创建定时器
    timer = new QTimer(this);
    timer->start(1000); // 单位毫秒
    // 监听计时器信号
    connect(timer, &QTimer::timeout, this, [&](){
        // 获取当前时间
        QDateTime dateTime = QDateTime::currentDateTime();
        ui->dateLabel->setText(dateTime.toString("yyyy:MM:dd\n hh:mm:ss"));
    });
    // 监听退出按钮
    connect(ui->tabWidget,&QTabWidget::currentChanged,this,[&](int index){
        // 点击关闭按钮直接退出程序
        if(index == 5)
        {
            exit(0);
        }
    });
    // 默认展示第一页
    ui->tabWidget->setCurrentIndex(0);
    // 监听操作事件
    // qobject_cast静态转换qt类
    connect(this, &MyMainWindow::actionOpt, qobject_cast<EditForm*>(ui->tabWidget->widget(1)), &EditForm::Myoperation);
    // 监听home的设置按钮操作
    connect(qobject_cast<Home*>(ui->tabWidget->widget(0)), &Home::actionOpt, qobject_cast<EditForm*>(ui->tabWidget->widget(1)), &EditForm::Myoperation);

}

MyMainWindow::~MyMainWindow()
{
    delete ui;
}

void MyMainWindow::widgetToEdit(QString opt)
{
    emit actionOpt(opt);
}
